<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
MultiStartUnivariateOptimizer (Commons Math 3.2 API)
</TITLE>


<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="MultiStartUnivariateOptimizer (Commons Math 3.2 API)";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">
<HR>


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/MultiStartUnivariateOptimizer.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../../org/apache/commons/math3/optim/univariate/BrentOptimizer.html" title="class in org.apache.commons.math3.optim.univariate"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../../org/apache/commons/math3/optim/univariate/SearchInterval.html" title="class in org.apache.commons.math3.optim.univariate"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../../index.html?org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="MultiStartUnivariateOptimizer.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_org.apache.commons.math3.optim.BaseOptimizer">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.commons.math3.optim.univariate</FONT>
<BR>
Class MultiStartUnivariateOptimizer</H2>
<PRE>
<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
  <IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">org.apache.commons.math3.optim.BaseOptimizer</A>&lt;<A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optim.univariate">UnivariatePointValuePair</A>&gt;
      <IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">org.apache.commons.math3.optim.univariate.UnivariateOptimizer</A>
          <IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.commons.math3.optim.univariate.MultiStartUnivariateOptimizer</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>MultiStartUnivariateOptimizer</B><DT>extends <A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateOptimizer</A></DL>
</PRE>

<P>
Special implementation of the <A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate"><CODE>UnivariateOptimizer</CODE></A> interface
 adding multi-start features to an existing optimizer.
 <br/>
 This class wraps an optimizer in order to use it several times in
 turn with different starting points (trying to avoid being trapped
 in a local extremum when looking for a global one).
<P>

<P>
<DL>
<DT><B>Since:</B></DT>
  <DD>3.0</DD>
<DT><B>Version:</B></DT>
  <DD>$Id: MultiStartUnivariateOptimizer.java 1435539 2013-01-19 13:27:24Z tn $</DD>
</DL>
<HR>

<P>
<!-- =========== FIELD SUMMARY =========== -->

<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.commons.math3.optim.BaseOptimizer"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.apache.commons.math3.optim.<A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html#evaluations">evaluations</A>, <A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html#iterations">iterations</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../../../org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html#MultiStartUnivariateOptimizer(org.apache.commons.math3.optim.univariate.UnivariateOptimizer, int, org.apache.commons.math3.random.RandomGenerator)">MultiStartUnivariateOptimizer</A></B>(<A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateOptimizer</A>&nbsp;optimizer,
                              int&nbsp;starts,
                              <A HREF="../../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</A>&nbsp;generator)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a multi-start optimizer from a single-start optimizer.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optim.univariate">UnivariatePointValuePair</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html#doOptimize()">doOptimize</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Performs the bulk of the optimization algorithm.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html#getEvaluations()">getEvaluations</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Gets the number of evaluations of the objective function.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optim.univariate">UnivariatePointValuePair</A>[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html#getOptima()">getOptima</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Gets all the optima found during the last call to <code>optimize</code>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optim.univariate">UnivariatePointValuePair</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize</A></B>(<A HREF="../../../../../../org/apache/commons/math3/optim/OptimizationData.html" title="interface in org.apache.commons.math3.optim">OptimizationData</A>...&nbsp;optData)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Stores data and performs the optimization.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.commons.math3.optim.univariate.UnivariateOptimizer"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.commons.math3.optim.univariate.<A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateOptimizer</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#computeObjectiveValue(double)">computeObjectiveValue</A>, <A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#getGoalType()">getGoalType</A>, <A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#getMax()">getMax</A>, <A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#getMin()">getMin</A>, <A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#getStartValue()">getStartValue</A>, <A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)">parseOptimizationData</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.commons.math3.optim.BaseOptimizer"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.commons.math3.optim.<A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html#getConvergenceChecker()">getConvergenceChecker</A>, <A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html#getIterations()">getIterations</A>, <A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html#getMaxEvaluations()">getMaxEvaluations</A>, <A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html#getMaxIterations()">getMaxIterations</A>, <A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html#incrementEvaluationCount()">incrementEvaluationCount</A>, <A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html#incrementIterationCount()">incrementIterationCount</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="MultiStartUnivariateOptimizer(org.apache.commons.math3.optim.univariate.UnivariateOptimizer, int, org.apache.commons.math3.random.RandomGenerator)"><!-- --></A><H3>
MultiStartUnivariateOptimizer</H3>
<PRE>
public <B>MultiStartUnivariateOptimizer</B>(<A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateOptimizer</A>&nbsp;optimizer,
                                     int&nbsp;starts,
                                     <A HREF="../../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</A>&nbsp;generator)</PRE>
<DL>
<DD>Create a multi-start optimizer from a single-start optimizer.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>optimizer</CODE> - Single-start optimizer to wrap.<DD><CODE>starts</CODE> - Number of starts to perform. If <code>starts == 1</code>,
 the <code>optimize</code> methods will return the same solution as
 <code>optimizer</code> would.<DD><CODE>generator</CODE> - Random generator to use for restarts.
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../../../org/apache/commons/math3/exception/NotStrictlyPositiveException.html" title="class in org.apache.commons.math3.exception">NotStrictlyPositiveException</A></CODE> - if <code>starts &lt; 1</code>.</DL>
</DL>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="getEvaluations()"><!-- --></A><H3>
getEvaluations</H3>
<PRE>
public int <B>getEvaluations</B>()</PRE>
<DL>
<DD>Gets the number of evaluations of the objective function.
 The number of evaluations corresponds to the last call to the
 <code>optimize</code> method. It is 0 if the method has not been
 called yet.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html#getEvaluations()">getEvaluations</A></CODE> in class <CODE><A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</A>&lt;<A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optim.univariate">UnivariatePointValuePair</A>&gt;</CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the number of evaluations of the objective function.</DL>
</DD>
</DL>
<HR>

<A NAME="getOptima()"><!-- --></A><H3>
getOptima</H3>
<PRE>
public <A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optim.univariate">UnivariatePointValuePair</A>[] <B>getOptima</B>()</PRE>
<DL>
<DD>Gets all the optima found during the last call to <code>optimize</code>.
 The optimizer stores all the optima found during a set of
 restarts. The <code>optimize</code> method returns the best point only.
 This method returns all the points found at the end of each starts,
 including the best one already returned by the <code>optimize</code> method.
 <br/>
 The returned array as one element for each start as specified
 in the constructor. It is ordered with the results from the
 runs that did converge first, sorted from best to worst
 objective value (i.e in ascending order if minimizing and in
 descending order if maximizing), followed by <code>null</code> elements
 corresponding to the runs that did not converge. This means all
 elements will be <code>null</code> if the <code>optimize</code> method did throw
 an exception.
 This also means that if the first element is not <code>null</code>, it is
 the best point found across all starts.
<P>
<DD><DL>

<DT><B>Returns:</B><DD>an array containing the optima.
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../../../org/apache/commons/math3/exception/MathIllegalStateException.html" title="class in org.apache.commons.math3.exception">MathIllegalStateException</A></CODE> - if <A HREF="../../../../../../org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)"><CODE>optimize</CODE></A> has not been called.</DL>
</DD>
</DL>
<HR>

<A NAME="optimize(org.apache.commons.math3.optim.OptimizationData...)"><!-- --></A><H3>
optimize</H3>
<PRE>
public <A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optim.univariate">UnivariatePointValuePair</A> <B>optimize</B>(<A HREF="../../../../../../org/apache/commons/math3/optim/OptimizationData.html" title="interface in org.apache.commons.math3.optim">OptimizationData</A>...&nbsp;optData)</PRE>
<DL>
<DD>Stores data and performs the optimization.
 <br/>
 The list of parameters is open-ended so that sub-classes can extend it
 with arguments specific to their concrete implementations.
 <br/>
 When the method is called multiple times, instance data is overwritten
 only when actually present in the list of arguments: when not specified,
 data set in a previous call is retained (and thus is optional in
 subsequent calls).
 <br/>
 Important note: Subclasses <em>must</em> override
 <A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)"><CODE>BaseOptimizer.parseOptimizationData(OptimizationData[])</CODE></A> if they need to register
 their own options; but then, they <em>must</em> also call
 <code>super.parseOptimizationData(optData)</code> within that method.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html#optimize(org.apache.commons.math3.optim.OptimizationData...)">optimize</A></CODE> in class <CODE><A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateOptimizer.html" title="class in org.apache.commons.math3.optim.univariate">UnivariateOptimizer</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>optData</CODE> - Optimization data. In addition to those documented in
 <A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html#parseOptimizationData(org.apache.commons.math3.optim.OptimizationData...)"><CODE>BaseOptimizer</CODE></A>, this method will register the following data:
 <ul>
  <li><A HREF="../../../../../../org/apache/commons/math3/optim/nonlinear/scalar/GoalType.html" title="enum in org.apache.commons.math3.optim.nonlinear.scalar"><CODE>GoalType</CODE></A></li>
  <li><A HREF="../../../../../../org/apache/commons/math3/optim/univariate/SearchInterval.html" title="class in org.apache.commons.math3.optim.univariate"><CODE>SearchInterval</CODE></A></li>
  <li><A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariateObjectiveFunction.html" title="class in org.apache.commons.math3.optim.univariate"><CODE>UnivariateObjectiveFunction</CODE></A></li>
 </ul>
<DT><B>Returns:</B><DD>a point/value pair that satifies the convergence criteria.
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../../../org/apache/commons/math3/exception/MathIllegalStateException.html" title="class in org.apache.commons.math3.exception">MathIllegalStateException</A></CODE> - if <code>optData</code> does not contain an
 instance of <A HREF="../../../../../../org/apache/commons/math3/optim/MaxEval.html" title="class in org.apache.commons.math3.optim"><CODE>MaxEval</CODE></A> or <A HREF="../../../../../../org/apache/commons/math3/optim/univariate/SearchInterval.html" title="class in org.apache.commons.math3.optim.univariate"><CODE>SearchInterval</CODE></A>.</DL>
</DD>
</DL>
<HR>

<A NAME="doOptimize()"><!-- --></A><H3>
doOptimize</H3>
<PRE>
protected <A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optim.univariate">UnivariatePointValuePair</A> <B>doOptimize</B>()</PRE>
<DL>
<DD>Performs the bulk of the optimization algorithm.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html#doOptimize()">doOptimize</A></CODE> in class <CODE><A HREF="../../../../../../org/apache/commons/math3/optim/BaseOptimizer.html" title="class in org.apache.commons.math3.optim">BaseOptimizer</A>&lt;<A HREF="../../../../../../org/apache/commons/math3/optim/univariate/UnivariatePointValuePair.html" title="class in org.apache.commons.math3.optim.univariate">UnivariatePointValuePair</A>&gt;</CODE></DL>
</DD>
<DD><DL>

<DT><B>Returns:</B><DD>the point/value pair giving the optimal value of the
 objective function.</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/MultiStartUnivariateOptimizer.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../../org/apache/commons/math3/optim/univariate/BrentOptimizer.html" title="class in org.apache.commons.math3.optim.univariate"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../../org/apache/commons/math3/optim/univariate/SearchInterval.html" title="class in org.apache.commons.math3.optim.univariate"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../../../index.html?org/apache/commons/math3/optim/univariate/MultiStartUnivariateOptimizer.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="MultiStartUnivariateOptimizer.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_org.apache.commons.math3.optim.BaseOptimizer">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>
Copyright &#169; 2003-2013 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>
